namespace MiniStock.BusinessLogic.EventDispatcher.MessageMap
{
    public enum MessageMapStatus
    {
        /// <summary>
        /// Entry is freshly created
        /// </summary>
        Created,
        /// <summary>
        /// Message is routed to processor node, is under processing
        /// </summary>
        Submitted,
        /// <summary>
        /// Processor node returned success, message is routed to persister
        /// </summary>
        Processed,
        /// <summary>
        /// Message is persisted, processing is complete
        /// </summary>
        Persisted,
        /// <summary>
        /// Message processing is aborted due to a non-recoverable error
        /// </summary>
        Faulted,
        /// <summary>
        /// Message processing is complete, client has successfully polled for status
        /// </summary>
        Completed
    }
}